package cn.com.nes.mybatis.agent.crm.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 商机表
 */
@TableName(value ="opportunity")
@Data
public class Opportunity implements Serializable {
    /**
     * 商机Id
     */
    @TableId(value = "uuid")
    private String uuid;

    /**
     * 所属公司
     */
    @TableField(value = "companyId")
    private String companyId;

    /**
     * 商机分类
     */
    @TableField(value = "opportunity_classification")
    private String opportunityClassification;

    /**
     * 商机阶段 新商机 跟进中 商机成交（签订合同，生成项目）   商机流失
     */
    @TableField(value = "opportunitystage")
    private String opportunityStage;

    /**
     * 商机类型：设备购买 售后维修  项目洽谈
     */
    @TableField(value = "opportunitytype")
    private String opportunityType;

    /**
     * 商机名称
     */
    @TableField(value = "opportunityname")
    private String opportunityName;

    /**
     * 所属客户
     */
    @TableField(value = "customerId")
    private String customerId;

    /**
     * 客户房屋ID
     */
    @TableField(value = "customer_house_id")
    private String houseId;

    /**
     * 预期金额
     */
    @TableField(value = "amount")
    private BigDecimal amount;

    /**
     * bimId
     */
    @TableField(value = "bimId")
    private String bimId;

    /**
     * 相关线索
     */
    @TableField(value = "clueId")
    private String clueId;

    /**
     * 商机所有人：（登记人）
     */
    @TableField(value = "opportunityowner")
    private String opportunityOwner;

    /**
     * 行政区划
     */
    @TableField(value = "xzqhdm")
    private String xzqhdm;

    /**
     * 项目地址
     */
    @TableField(value = "projectaddress")
    private String projectAddress;

    /**
     * 项目面积
     */
    @TableField(value = "projectarea")
    private BigDecimal projectArea;

    /**
     * 经度
     */
    @TableField(value = "longitude")
    private BigDecimal longitude;

    /**
     * 纬度
     */
    @TableField(value = "latitude")
    private BigDecimal latitude;

    /**
     * 负责人
     */
    @TableField(value = "personincharge")
    private String personinCharge;

    /**
     * 负责人电话
     */
    @TableField(value = "person_in_charge_phone")
    private String personInChargePhone;

    /**
     * 性别
     */
    @TableField(value = "sex")
    private String sex;

    /**
     * 微信
     */
    @TableField(value = "wechat")
    private String wechat;

    /**
     * 备注
     */
    @TableField(value = "memo")
    private String memo;

    /**
     * 图片1
     */
    @TableField(value = "picture1")
    private String picture1;

    /**
     * 图片2
     */
    @TableField(value = "picture2")
    private String picture2;

    /**
     * 图片3
     */
    @TableField(value = "picture3")
    private String picture3;

    /**
     * 商机金额
     */
    @TableField(value = "opportunitymoney")
    private BigDecimal opportunityMoney;

    /**
     * 预计成交日期
     */
    @TableField(value = "estimatedclosingdate")
    private Date estimatedClosingDate;

    /**
     * 创建者uid
     */
    @TableField(value = "createUid")
    private String createUid;

    /**
     * 创建时间
     */
    @TableField(value = "createTime")
    private Date createTime;

    /**
     * 修改者uid
     */
    @TableField(value = "modifyUid")
    private String modifyUid;

    /**
     * 修改时间
     */
    @TableField(value = "modifyTime")
    private Date modifyTime;

    /**
     * 是否删除
     */
    @TableField(value = "isdelete")
    private String deleted;

    /**
     * 
     */
    @TableField(value = "jsondata")
    private String jsonData;

    /**
     * 模板ID
     */
    @TableField(value = "templateId")
    private String templateId;

    /**
     * 进场时间
     */
    @TableField(value = "mobilizationtime")
    private Date mobilizationTime;

    /**
     * 竣工时间
     */
    @TableField(value = "completetime")
    private Date completeTime;

    /**
     * 订货时间
     */
    @TableField(value = "ordergoodstime")
    private Date orderGoodsTime;

    /**
     * 设备数量
     */
    @TableField(value = "equinumber")
    private Integer equiNumber;

    /**
     * 建筑性质
     */
    @TableField(value = "buildnature")
    private String buildNature;

    /**
     * 建筑种类
     */
    @TableField(value = "bulidtype")
    private String bulidType;

    /**
     * 设备规格
     */
    @TableField(value = "equispec")
    private String equiSpec;

    /**
     * 设备规格参数
     */
    @TableField(value = "equispecsize")
    private String equiSpecSize;

    /**
     * 采购方采购方式
     */
    @TableField(value = "cgftype")
    private String cgfType;

    /**
     * 采购方联系方式
     */
    @TableField(value = "cgfphone")
    private String cgfPhone;

    /**
     * 设计方公司名
     */
    @TableField(value = "sjfcompanyname")
    private String sjfCompanyName;

    /**
     * 设计方联系方式
     */
    @TableField(value = "sjfphone")
    private String sjfPhone;

    /**
     * 承建方公司名
     */
    @TableField(value = "cjfcompanyname")
    private String cjfCompanyName;

    /**
     * 承建方联系方式
     */
    @TableField(value = "cjfphone")
    private String cjfPhone;

    /**
     * 投资方公司名
     */
    @TableField(value = "tzfcompanyname")
    private String tzfCompanyName;

    /**
     * 投资方联系方式
     */
    @TableField(value = "tzfphone")
    private String tzfPhone;

    /**
     * 监理方公司名
     */
    @TableField(value = "jlfcompanyname")
    private String jlfCompanyName;

    /**
     * 监理方联系方式
     */
    @TableField(value = "jlfphone")
    private String jlfPhone;

    /**
     * 申报类别
     */
    @TableField(value = "category_of_declaration")
    private Integer categoryOfDeclaration;

    /**
     * 新申报面积
     */
    @TableField(value = "newly_declared_area")
    private BigDecimal newlyDeclaredArea;

    /**
     * 原申报面积
     */
    @TableField(value = "original_declared_area")
    private BigDecimal originalDeclaredArea;

    /**
     * 客户编号-电表号
     */
    @TableField(value = "electricity_meter_numbers")
    private String electricityMeterNumbers;

    /**
     * 客户编号-燃气表号
     */
    @TableField(value = "gas_meter_numbers")
    private String gasMeterNumbers;

    /**
     * 门牌号
     */
    @TableField("house_number")
    private String houseNumber;

    /**
     * 户籍情况：01-本地，02-非本地
     */
    @TableField("household_registration")
    private String householdRegistration;

    /**
     * 是否安装光伏
     */
    @TableField("install_photovoltaic")
    private Boolean installPhotovoltaic;

    /**
     * 改造类型
     * 政府商务项目必填，字典类别名称：改造类型，值域对应 t_param 表 param_type=336
     */
    @TableField("renovation_type")
    private String renovationType;

    /**
     * 补贴方式
     */
    @TableField("allowance_type")
    private String allowanceType;

    /**
     * 补贴金额
     */
    @TableField("allowance_amount_of_money")
    private BigDecimal allowanceAmountOfMoney;

    /**
     * 补贴对象， 01-厂家，02-农户
     */
    @TableField("allowance_target")
    private String allowanceTarget;

    /**
     * 补贴下限
     */
    @TableField("allowance_down")
    private BigDecimal allowanceDown;

    /**
     * 补贴上限
     */
    @TableField("allowance_up")
    private BigDecimal allowanceUp;

    /**
     * 个人缴纳金额
     */
    @TableField("personal_payment")
    private BigDecimal personalPayment;

    /**
     * 计划安装户数
     */
    @TableField("plan_install_peoples")
    private Integer planInstallPeoples;

    /**
     * 计划年分
     */
    @TableField("plan_year")
    private String planYear;

    /**
     * 能源类型
     */
    @TableField("energy_type")
    private String energyType;

    /**
     * 允许的设备能源分类
     */
    @TableField("allow_device_energy_type")
    private String allowDeviceEnergyType;

    /**
     * 允许的设备品牌分类
     */
    @TableField("allow_device_brand_type")
    private String allowDeviceBrandType;

    // 房屋信息字段

    /**
     * 房屋类型
     */
    @TableField("house_type")
    private String houseType;

    /**
     * 采暖面积
     */
    @TableField("heating_area")
    private BigDecimal heatingArea;

    /**
     * 常用采暖面积
     */
    @TableField("common_heating_area")
    private BigDecimal commonHeatingArea;

    /**
     * 建筑结构
     */
    @TableField(value = "building_structure")
    private String buildingStructure;

    /**
     * 建筑层高
     */
    @TableField("building_height")
    private BigDecimal buildingHeight;

    /**
     * 外墙厚度
     */
    @TableField("outer_wall_thickness")
    private String outerWallThickness;

    /**
     * 外墙保温
     */
    @TableField("outer_wall_keep_warm")
    private String outerWallKeepWarm;

    /**
     * 供暖方式
     */
    @TableField("heating_mode")
    private String heatingMode;

    /**
     * 机组安装位置
     */
    @TableField("install_position")
    private String installPosition;

    /**
     * 房屋用途
     */
    @TableField("house_perpose")
    private String housePerpose;

    /**
     * 房屋间数
     */
    @TableField("room_count")
    private BigDecimal roomCount;

    /**
     * 设计单位
     */
    @TableField("design_company")
    private String designCompany;

    /**
     * 图纸编号
     */
    @TableField("drawing_no")
    private String drawingNo;

    /**
     * 窗户类型
     */
    @TableField("window_type")
    private String windowType;

    /**
     * 设计热负荷
     */
    @TableField("design_heating_load")
    private BigDecimal designHeatingLoad;

    /**
     * 房屋朝向
     */
    @TableField("house_direction")
    private String houseDirection;

    /**
     * 末端改造状态
     */
    @TableField("end_state")
    private String endState;

    /**
     * 采暖末端
     */
    @TableField("heating_end")
    private String heatingEnd;

    /**
     * 是否农村
     */
    @TableField("is_village")
    private String isVillage;
   /* 申请种类*/
    @TableField("application_type")
    private String applicationType;
    /* 低保户或五保户*/
    @TableField("dbhhwbh")
    private String dbhhwbh;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}